import R, { RaphaelFont } from "raphael";

() => {
    const font: RaphaelFont = {
        w: 209,
        face: {
            "font-family": "Vegur",
            "font-weight": 200,
            "font-stretch": "normal",
            "units-per-em": "360",
            "panose-1": "0 0 0 0 0 0 0 0 0 0",
            ascent: "270",
            descent: "-90",
            "x-height": "4",
            bbox: "-11 -274 322 94",
            "underline-thickness": "18",
            "underline-position": "-36",
            "unicode-range": "U+0020-U+00F3"
        },
        glyphs: {
            " ": {
                w: 83
            },
            B: {
                d: "",
                w: 196
            },
            b: {
                d: ""
            },
            a: {
                d: "",
                w: 177
            },
            c: {
                d: "",
                w: 173
            },
            d: {
                d: ""
            },
            e: {
                d: "",
                w: 183
            },
            f: {
                d: "",
                w: 107
            },
            g: {
                d: ""
            },
            h: {
                d: "",
                w: 201
            },
            i: {
                d: "",
                w: 79
            },
            j: {
                d: "",
                w: 79
            },
            k: {
                d: "",
                w: 176
            },
            l: {
                d: "",
                w: 79
            },
            m: {
                d: "",
                w: 303
            },
            n: {
                d: "",
                w: 201
            },
            o: {
                d: "",
                w: 202
            },
            u: {
                d: "",
                w: 201
            },
            t: {
                d: "",
                w: 111
            },
            s: {
                d: "",
                w: 137
            },
            r: {
                d: "",
                w: 104
            },
            q: {
                d: ""
            },
            p: {
                d: ""
            },
            C: {
                d: "",
                w: 202
            },
            D: {
                d: "",
                w: 233
            },
            E: {
                d: "",
                w: 167
            },
            F: {
                d: "",
                w: 159
            },
            U: {
                d: "",
                w: 219
            },
            T: {
                d: "",
                w: 195
            },
            S: {
                d: "",
                w: 164
            },
            R: {
                d: "",
                w: 190
            },
            Q: {
                d: "",
                w: 259
            },
            P: {
                d: "",
                w: 176
            },
            O: {
                d: "",
                w: 259
            },
            L: {
                d: "",
                w: 180
            },
            J: {
                d: "",
                w: 140
            },
            I: {
                d: "",
                w: 79
            },
            H: {
                d: "",
                w: 238
            },
            G: {
                d: "",
                w: 229
            },
            0: {
                d: "",
                w: 203
            },
            1: {
                d: "",
                w: 159
            },
            2: {
                d: "",
                w: 174
            },
            3: {
                d: "",
                w: 166
            },
            4: {
                d: "",
                w: 189
            },
            6: {
                d: "",
                w: 183
            },
            5: {
                d: "",
                w: 172
            },
            7: {
                d: "",
                w: 164
            },
            8: {
                d: "",
                w: 184
            },
            9: {
                d: "",
                w: 183
            },
            "\/": {
                d: "",
                w: 118
            },
            ".": {
                d: "",
                w: 61
            },
            "-": {
                d: "",
                w: 103
            },
            ",": {
                d: "",
                w: 64
            },
            "+": {
                d: "",
                w: 212
            },
            "*": {
                d: "",
                w: 138
            },
            "(": {
                d: "",
                w: 90
            },
            "'": {
                d: "",
                w: 59
            },
            "%": {
                d: "",
                w: 277
            },
            "!": {
                d: "",
                w: 66
            },
            "\"": {
                d: "",
                w: 97
            },
            "#": {
                d: "",
                w: 173
            },
            $: {
                d: "",
                w: 168
            },
            "&": {
                d: "",
                w: 211
            },
            ")": {
                d: "",
                w: 90
            },
            "?": {
                d: "",
                w: 124
            },
            ":": {
                d: "",
                w: 61
            },
            ";": {
                d: "",
                w: 64
            },
            "<": {
                d: "",
                w: 170
            },
            "=": {
                d: "",
                w: 207
            },
            "[": {
                d: "",
                w: 88
            },
            "\\": {
                d: "",
                w: 118
            },
            "]": {
                d: "",
                w: 88
            },
            "^": {
                d: "",
                w: 184
            },
            _: {
                d: "",
                w: 162
            },
            ">": {
                d: "",
                w: 170
            },
            "{": {
                d: "",
                w: 97
            },
            "|": {
                d: "",
                w: 77
            },
            "}": {
                d: "",
                w: 97
            },
            "~": {
                d: "",
                w: 201
            },
            "`": {
                d: "",
                w: 67
            },
            "@": {
                d: "",
                w: 293
            },
            K: {
                d: "",
                w: 200
            },
            M: {
                d: "",
                w: 290
            },
            v: {
                d: "",
                w: 178
            },
            w: {
                d: "",
                w: 281
            },
            x: {
                d: "",
                w: 171
            },
            y: {
                d: "",
                w: 178
            },
            z: {
                d: "",
                w: 154
            },
            Z: {
                d: "",
                w: 183
            },
            Y: {
                d: "",
                w: 187
            },
            X: {
                d: "",
                w: 184
            },
            W: {
                d: "",
                w: 326
            },
            V: {
                d: ""
            },
            A: {
                d: ""
            },
            N: {
                d: "",
                w: 243
            },
            ó: {
                d: "",
                w: 202
            },
            "\u00a0": {
                w: 83
            }
        }
    };

    // $ExpectType RaphaelFont
    R.registerFont(font);

    // $ExpectType RaphaelSet<"SVG" | "VML">
    R().print(0, 0, "foo", font);
};
